/**
 * 公共工具类
 * @author：丁少华
 * @param：
 * @throws：
 * @time：2018/7/5
 */
import store from './store/index'
class Common {
  // MD5生成
  md5Fun (ar, k, j) {
    var arr = ar.split('')
    var c = arr[k]
    arr[k] = arr[j]
    arr[j] = c
    arr = arr.toString().replace(/,/g, '')
    return arr
  }

  // 倒计时
  // static daoJsSwitch=false;
  daoJs (count) {
    store.commit('setDaoJs', count)
    if (!this.daoJsSwitch) {
      this.daoJsSwitch = true
      let timer = setInterval(() => {
        if (count > 0) {
          count--
          store.commit('setDaoJs', count)
        } else {
          this.daoJsSwitch = false
          clearInterval(timer)
        }
      }, 1000)
    }
  }

  // 用于开关增加属性
  addAttrSwitch (arr,attr) {
    let attrTemp=attr?attr:'switch';
    arr.forEach(function (item) {
      item[attrTemp] = false
    })
  }

  //四舍五入不补位
  number2 (that,n) {
      let temp=that;
      let thatStr=String(that);
      let point=thatStr.indexOf('.');
      if(point!=-1){
          let ws=thatStr.length-point-1;//小数位数
          if(ws-n>0){
              let w=Math.pow(10,n);//表示10的n次幂
              //0.105*100=10.5, 10.5四舍五入为11, 11/100=0.11
              temp=Math.round(temp*w)/w;
          }
      }
      return temp;
  }

  // 恶汉式静态单例工厂（理论上来说，此时应该禁用构造，但是es不支持权限修饰符，ts可以，后期尝试用proxy）
  // static obj = new Common();
  static getInstance () {
    return this.obj
  }
}
Common.daoJsSwitch=false;
Common.obj = new Common();
export default Common.getInstance()
